@JSFComponent(family=AbstractMarker.FAMILY, 
    type=AbstractMarker.TYPE,
    renderer=@JsfRenderer(type=MarkerRendererBase.TYPE,
         family=AbstractMarker.FAMILY)
)
public abstract class AbstractMarker extends UIComponentBase {
    public static final String FAMILY = "cz.muni.fi.marker";
    public static final String TYPE = "cz.muni.fi.marker";
    
    @Attribute(required=true)
    public abstract Double getLatitude();
    
    @Attribute(required=true)
    public abstract Double getLongitude();
    
    public AbstractMap getParentMap(){
        //return parent map of marker
    }
    //rest of attributes and methods ommited
}
